#include <stdio.h>
#include ".\lib\securec-master\include\securec.h"
// #include ".\lib\uthash-master\src\uthash.h" /* UT_hash_handle */


int Example() {
    int m;
    int num[1000];
    while(scanf_s("%d",&m) != EOF)
    {
        for(int i = 0;i < m;i++)
        {
            scanf_s("%d",&num[i]);
        }
        int n;
        int tmp;
        scanf_s("%d",&n);
        for(int j = 0;j < n;j++)
        {
            scanf_s("%d",&num[m+j]);
        }
        for(int i = 0;i < m + n -1;i++)
        {
            for(int j = 0;j < m + n -1 - i;j++)
            {
                if(num[j] > num[j+1])
                {
                    tmp = num[j];
                    num[j] = num[j+1];
                    num[j+1] = tmp;
                }
            }
        }
        // 过滤掉重复数组元素前
        printf("%d",num[0]);
        for(int i = 1;i < m + n;i++)
        {
            printf("%d",num[i]);
        }
        printf("\n");
        // 过滤掉重复数组元素后
        printf("%d",num[0]);
        for(int i = 1;i < m + n;i++)
        {
            // 过滤掉重复数组元素
            if(num[i] != num[i-1])
            {
                printf("%d",num[i]);
            }
        }
        printf("\n");
    }
}


int MergeArray(int* list1, int list1Size, int* list2, int list2Size) {
    // ??? 怎么修改？？
}


int main()
{
    Example();
    return 0;
}
